<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.5"/>
<title>QCNSim: QcnSimTest/TrafficGeneratorTest.cpp Source File</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
  $(document).ready(function() { searchBox.OnSelectItem(0); });
</script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td style="padding-left: 0.5em;">
   <div id="projectname">QCNSim
   </div>
   <div id="projectbrief">Simulator for Quake-Catcher Network</div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.5 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
  <div id="navrow1" class="tabs">
    <ul class="tablist">
      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
      <li><a href="annotated.html"><span>Classes</span></a></li>
      <li class="current"><a href="files.html"><span>Files</span></a></li>
      <li>
        <div id="MSearchBox" class="MSearchBoxInactive">
        <span class="left">
          <img id="MSearchSelect" src="search/mag_sel.png"
               onmouseover="return searchBox.OnSearchSelectShow()"
               onmouseout="return searchBox.OnSearchSelectHide()"
               alt=""/>
          <input type="text" id="MSearchField" value="Search" accesskey="S"
               onfocus="searchBox.OnSearchFieldFocus(true)" 
               onblur="searchBox.OnSearchFieldFocus(false)" 
               onkeyup="searchBox.OnSearchFieldChange(event)"/>
          </span><span class="right">
            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
          </span>
        </div>
      </li>
    </ul>
  </div>
  <div id="navrow2" class="tabs2">
    <ul class="tablist">
      <li><a href="files.html"><span>File&#160;List</span></a></li>
      <li><a href="globals.html"><span>File&#160;Members</span></a></li>
    </ul>
  </div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Macros</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Pages</a></div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>

<div id="nav-path" class="navpath">
  <ul>
<li class="navelem"><a class="el" href="dir_3e989efef406e88ca8d8bde4ec47b67f.html">QcnSimTest</a></li>  </ul>
</div>
</div><!-- top -->
<div class="header">
  <div class="headertitle">
<div class="title">TrafficGeneratorTest.cpp</div>  </div>
</div><!--header-->
<div class="contents">
<a href="_traffic_generator_test_8cpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;</div>
<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="_traffic_generator_test_8h.html">TrafficGeneratorTest.h</a>&quot;</span></div>
<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;</div>
<div class="line"><a name="l00027"></a><span class="lineno"><a class="line" href="class_traffic_generator_test.html#ae2be7a7e40632b323e0d69f4f1158ee5">   27</a></span>&#160;<a class="code" href="class_traffic_generator_test.html#ae2be7a7e40632b323e0d69f4f1158ee5">TrafficGeneratorTest::TrafficGeneratorTest</a>(): simulatorGlobals(<a class="code" href="class_simulator_globals.html">SimulatorGlobals</a>(0.0, 0.0, false, <span class="stringliteral">&quot;TrafficGeneratorTest&quot;</span>)), </div>
<div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160;        scheduler(<a class="code" href="class_scheduler.html">Scheduler</a>(simulatorGlobals)) {</div>
<div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;            <a class="code" href="class_traffic_generator_test.html#aaa15cf542a6bf04399fccc19f4ad942c">simulatorGlobals</a>.<a class="code" href="class_simulator_globals.html#a4f30b6252c3682679c05233afbc0604d">seedRandomNumberGenerator</a>(1); <span class="comment">// Use a fixed seed here for the tests.</span></div>
<div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160;}</div>
<div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160;</div>
<div class="line"><a name="l00032"></a><span class="lineno">   32</span>&#160;</div>
<div class="line"><a name="l00034"></a><span class="lineno"><a class="line" href="_traffic_generator_test_8cpp.html#a93360661333f4b5b248428aa8c2d9e84">   34</a></span>&#160;<a class="code" href="_constant_rate_traffic_generator_test_8cpp.html#a26497dd468babfeebfd7e976fdc56dd6">TEST_F</a>(<a class="code" href="class_traffic_generator_test.html">TrafficGeneratorTest</a>, RandomGeneratorTest) {</div>
<div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160;    <a class="code" href="class_simulator_globals.html">SimulatorGlobals</a> simulatorGlobalsOther = <a class="code" href="class_simulator_globals.html">SimulatorGlobals</a>();</div>
<div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160;    <span class="comment">// This test below will always fail... or almost always, since the default seed is random (from random_device).</span></div>
<div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160;    <span class="comment">//EXPECT_EQ(3435973836, simulatorGlobalsOther.getRandomNumberGeneratorSeed());</span></div>
<div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160;    <span class="comment">// Now let&#39;s test with the default, determined seed.</span></div>
<div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160;    EXPECT_EQ(1, simulatorGlobals.getRandomNumberGeneratorSeed());</div>
<div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;</div>
<div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;}</div>
<div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160;</div>
<div class="line"><a name="l00044"></a><span class="lineno"><a class="line" href="_traffic_generator_test_8cpp.html#ae9568987fa2cd5292f5963fd697456c0">   44</a></span>&#160;<a class="code" href="_constant_rate_traffic_generator_test_8cpp.html#a26497dd468babfeebfd7e976fdc56dd6">TEST_F</a>(<a class="code" href="class_traffic_generator_test.html">TrafficGeneratorTest</a>, ExponentialVariateGeneratorTest) {</div>
<div class="line"><a name="l00045"></a><span class="lineno">   45</span>&#160;    std::shared_ptr&lt;Message&gt; source(<span class="keyword">new</span> <a class="code" href="class_message.html">Message</a>(<span class="stringliteral">&quot;This is a dummy entity for source.&quot;</span>));</div>
<div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160;    std::shared_ptr&lt;Message&gt; destination(<span class="keyword">new</span> <a class="code" href="class_message.html">Message</a>(<span class="stringliteral">&quot;This is a dummy entity for destination.&quot;</span>));</div>
<div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160;    std::shared_ptr&lt;Message&gt; tokenContents(<span class="keyword">new</span> <a class="code" href="class_message.html">Message</a>(<span class="stringliteral">&quot;This is a dummy Token contents.&quot;</span>));</div>
<div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;    <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> seed = 1;</div>
<div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;    <span class="keywordtype">double</span> tau = 1.0;</div>
<div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160;    std::shared_ptr&lt;Token&gt; token(<span class="keyword">nullptr</span>);</div>
<div class="line"><a name="l00051"></a><span class="lineno">   51</span>&#160;</div>
<div class="line"><a name="l00052"></a><span class="lineno">   52</span>&#160;    <span class="comment">// Set the fixed seed.</span></div>
<div class="line"><a name="l00053"></a><span class="lineno">   53</span>&#160;    simulatorGlobals.seedRandomNumberGenerator(seed);</div>
<div class="line"><a name="l00054"></a><span class="lineno">   54</span>&#160;    <a class="code" href="class_exponential_traffic_generator.html">ExponentialTrafficGenerator</a> exponentialGenerator(simulatorGlobals, scheduler, <a class="code" href="_event_type_8h.html#a2628ea8d12e8b2563c32f05dc7fff6faaa8dbff7900a4d5c983629de5a6f58d78">EventType::TRAFFIC_GENERATOR_ARRIVAL</a>, tokenContents, source, destination, 1, tau);</div>
<div class="line"><a name="l00055"></a><span class="lineno">   55</span>&#160;    <span class="comment">// Keep generator off, attempt to generate one instance of traffic. Member token is null at this point.</span></div>
<div class="line"><a name="l00056"></a><span class="lineno">   56</span>&#160;    EXPECT_EQ(token, exponentialGenerator.<a class="code" href="class_exponential_traffic_generator.html#a9095b69f4e9eee6c4027ab9672916157">createInstanceTrafficEvent</a>());</div>
<div class="line"><a name="l00057"></a><span class="lineno">   57</span>&#160;    <span class="comment">// Now turn generator On, generate one instance of traffic. Test outcomes.</span></div>
<div class="line"><a name="l00058"></a><span class="lineno">   58</span>&#160;    exponentialGenerator.<a class="code" href="class_traffic_generator.html#aad024e020fac17dbee74f0da16707df1">turnOn</a>();</div>
<div class="line"><a name="l00059"></a><span class="lineno">   59</span>&#160;    token = exponentialGenerator.<a class="code" href="class_exponential_traffic_generator.html#a9095b69f4e9eee6c4027ab9672916157">createInstanceTrafficEvent</a>();</div>
<div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160;    EXPECT_EQ(1, token-&gt;id);</div>
<div class="line"><a name="l00061"></a><span class="lineno">   61</span>&#160;    EXPECT_EQ(1, token-&gt;priority);</div>
<div class="line"><a name="l00062"></a><span class="lineno">   62</span>&#160;    EXPECT_EQ(tokenContents, token-&gt;associatedEntity);</div>
<div class="line"><a name="l00063"></a><span class="lineno">   63</span>&#160;    EXPECT_EQ(source, token-&gt;source);</div>
<div class="line"><a name="l00064"></a><span class="lineno">   64</span>&#160;    EXPECT_EQ(destination, token-&gt;destination);</div>
<div class="line"><a name="l00065"></a><span class="lineno">   65</span>&#160;    <span class="comment">// Get the event that was scheduled.</span></div>
<div class="line"><a name="l00066"></a><span class="lineno">   66</span>&#160;    <a class="code" href="class_event.html">Event</a> <span class="keyword">event</span> = scheduler.cause();</div>
<div class="line"><a name="l00067"></a><span class="lineno">   67</span>&#160;    <span class="comment">// Check the event time and see whether it is always the same value per the seed.</span></div>
<div class="line"><a name="l00068"></a><span class="lineno">   68</span>&#160;    EXPECT_DOUBLE_EQ(0.539605826511863, event.occurAfterTime);</div>
<div class="line"><a name="l00069"></a><span class="lineno">   69</span>&#160;    </div>
<div class="line"><a name="l00070"></a><span class="lineno">   70</span>&#160;    <span class="comment">// Create another exponential generator and see whether it begins with a different random sequence.</span></div>
<div class="line"><a name="l00071"></a><span class="lineno">   71</span>&#160;    <span class="comment">// It should; however, these tests prove that all exponential generators follow *one* unique pseudorandom sequence, determined by</span></div>
<div class="line"><a name="l00072"></a><span class="lineno">   72</span>&#160;    <span class="comment">// simulatorGlobals random engine and its seed. That is the desired behavior.</span></div>
<div class="line"><a name="l00073"></a><span class="lineno">   73</span>&#160;    <a class="code" href="class_exponential_traffic_generator.html">ExponentialTrafficGenerator</a> exponentialGeneratorSecond(simulatorGlobals, scheduler, <a class="code" href="_event_type_8h.html#a2628ea8d12e8b2563c32f05dc7fff6faaa8dbff7900a4d5c983629de5a6f58d78">EventType::TRAFFIC_GENERATOR_ARRIVAL</a>, tokenContents, source, destination, 1, tau);</div>
<div class="line"><a name="l00074"></a><span class="lineno">   74</span>&#160;    exponentialGeneratorSecond.<a class="code" href="class_traffic_generator.html#aad024e020fac17dbee74f0da16707df1">turnOn</a>();</div>
<div class="line"><a name="l00075"></a><span class="lineno">   75</span>&#160;    token = exponentialGeneratorSecond.<a class="code" href="class_exponential_traffic_generator.html#a9095b69f4e9eee6c4027ab9672916157">createInstanceTrafficEvent</a>();</div>
<div class="line"><a name="l00076"></a><span class="lineno">   76</span>&#160;    EXPECT_EQ(2, token-&gt;id);</div>
<div class="line"><a name="l00077"></a><span class="lineno">   77</span>&#160;    EXPECT_EQ(1, token-&gt;priority);</div>
<div class="line"><a name="l00078"></a><span class="lineno">   78</span>&#160;    EXPECT_EQ(tokenContents, token-&gt;associatedEntity);</div>
<div class="line"><a name="l00079"></a><span class="lineno">   79</span>&#160;    EXPECT_EQ(source, token-&gt;source);</div>
<div class="line"><a name="l00080"></a><span class="lineno">   80</span>&#160;    EXPECT_EQ(destination, token-&gt;destination);</div>
<div class="line"><a name="l00081"></a><span class="lineno">   81</span>&#160;    <span class="comment">// Get the event that was scheduled.</span></div>
<div class="line"><a name="l00082"></a><span class="lineno">   82</span>&#160;    <span class="keyword">event</span> = scheduler.cause();</div>
<div class="line"><a name="l00083"></a><span class="lineno">   83</span>&#160;    <span class="comment">// Check the event time and see whether it always the same value per the seed, but different than another instance of the expo. generator.</span></div>
<div class="line"><a name="l00084"></a><span class="lineno">   84</span>&#160;    EXPECT_DOUBLE_EQ(5.8727248609813936, event.occurAfterTime); <span class="comment">// 5.82 for a tau of 1, isn&#39;t it too large?</span></div>
<div class="line"><a name="l00085"></a><span class="lineno">   85</span>&#160;</div>
<div class="line"><a name="l00086"></a><span class="lineno">   86</span>&#160;    <span class="comment">// Get two more values, and then change the seed to another value and test two generations. The new values after seeding should be different than the next two here.</span></div>
<div class="line"><a name="l00087"></a><span class="lineno">   87</span>&#160;    token = exponentialGenerator.<a class="code" href="class_exponential_traffic_generator.html#a9095b69f4e9eee6c4027ab9672916157">createInstanceTrafficEvent</a>();</div>
<div class="line"><a name="l00088"></a><span class="lineno">   88</span>&#160;    EXPECT_EQ(3, token-&gt;id);</div>
<div class="line"><a name="l00089"></a><span class="lineno">   89</span>&#160;    <span class="comment">// Get the event that was scheduled.</span></div>
<div class="line"><a name="l00090"></a><span class="lineno">   90</span>&#160;    <span class="keyword">event</span> = scheduler.cause();</div>
<div class="line"><a name="l00091"></a><span class="lineno">   91</span>&#160;    <span class="comment">// Check the event time and see whether it always the same value per the seed, but different than another instance of the expo. generator.</span></div>
<div class="line"><a name="l00092"></a><span class="lineno">   92</span>&#160;    EXPECT_DOUBLE_EQ(1.2741252381599264, event.occurAfterTime);</div>
<div class="line"><a name="l00093"></a><span class="lineno">   93</span>&#160;    token = exponentialGenerator.<a class="code" href="class_exponential_traffic_generator.html#a9095b69f4e9eee6c4027ab9672916157">createInstanceTrafficEvent</a>();</div>
<div class="line"><a name="l00094"></a><span class="lineno">   94</span>&#160;    EXPECT_EQ(4, token-&gt;id);</div>
<div class="line"><a name="l00095"></a><span class="lineno">   95</span>&#160;    <span class="comment">// Get the event that was scheduled.</span></div>
<div class="line"><a name="l00096"></a><span class="lineno">   96</span>&#160;    <span class="keyword">event</span> = scheduler.cause();</div>
<div class="line"><a name="l00097"></a><span class="lineno">   97</span>&#160;    <span class="comment">// Check the event time and see whether it always the same value per the seed, but different than another instance of the expo. generator.</span></div>
<div class="line"><a name="l00098"></a><span class="lineno">   98</span>&#160;    EXPECT_DOUBLE_EQ(2.6964778379468424, event.occurAfterTime);</div>
<div class="line"><a name="l00099"></a><span class="lineno">   99</span>&#160;    <span class="comment">// Change global seed, generate two tokens, compare with values generated previously, in another test, for seed = 2.</span></div>
<div class="line"><a name="l00100"></a><span class="lineno">  100</span>&#160;    simulatorGlobals.seedRandomNumberGenerator(2);</div>
<div class="line"><a name="l00101"></a><span class="lineno">  101</span>&#160;    token = exponentialGenerator.<a class="code" href="class_exponential_traffic_generator.html#a9095b69f4e9eee6c4027ab9672916157">createInstanceTrafficEvent</a>();</div>
<div class="line"><a name="l00102"></a><span class="lineno">  102</span>&#160;    EXPECT_EQ(5, token-&gt;id);</div>
<div class="line"><a name="l00103"></a><span class="lineno">  103</span>&#160;    <span class="comment">// Get the event that was scheduled.</span></div>
<div class="line"><a name="l00104"></a><span class="lineno">  104</span>&#160;    <span class="keyword">event</span> = scheduler.cause();</div>
<div class="line"><a name="l00105"></a><span class="lineno">  105</span>&#160;    <span class="comment">// Check the event time and see whether it always the same value per the seed, but different than another instance of the expo. generator.</span></div>
<div class="line"><a name="l00106"></a><span class="lineno">  106</span>&#160;    EXPECT_DOUBLE_EQ(0.57269198962718915, event.occurAfterTime);</div>
<div class="line"><a name="l00107"></a><span class="lineno">  107</span>&#160;    token = exponentialGenerator.<a class="code" href="class_exponential_traffic_generator.html#a9095b69f4e9eee6c4027ab9672916157">createInstanceTrafficEvent</a>();</div>
<div class="line"><a name="l00108"></a><span class="lineno">  108</span>&#160;    EXPECT_EQ(6, token-&gt;id);</div>
<div class="line"><a name="l00109"></a><span class="lineno">  109</span>&#160;    <span class="comment">// Get the event that was scheduled.</span></div>
<div class="line"><a name="l00110"></a><span class="lineno">  110</span>&#160;    <span class="keyword">event</span> = scheduler.cause();</div>
<div class="line"><a name="l00111"></a><span class="lineno">  111</span>&#160;    <span class="comment">// Check the event time and see whether it always the same value per the seed, but different than another instance of the expo. generator.</span></div>
<div class="line"><a name="l00112"></a><span class="lineno">  112</span>&#160;    EXPECT_DOUBLE_EQ(0.20466788427640734, event.occurAfterTime);</div>
<div class="line"><a name="l00113"></a><span class="lineno">  113</span>&#160;    <span class="comment">// Generate one more, just to get the third value on the sequence of seed 2.</span></div>
<div class="line"><a name="l00114"></a><span class="lineno">  114</span>&#160;    token = exponentialGenerator.<a class="code" href="class_exponential_traffic_generator.html#a9095b69f4e9eee6c4027ab9672916157">createInstanceTrafficEvent</a>();</div>
<div class="line"><a name="l00115"></a><span class="lineno">  115</span>&#160;    EXPECT_EQ(7, token-&gt;id);</div>
<div class="line"><a name="l00116"></a><span class="lineno">  116</span>&#160;    <span class="comment">// Get the event that was scheduled.</span></div>
<div class="line"><a name="l00117"></a><span class="lineno">  117</span>&#160;    <span class="keyword">event</span> = scheduler.cause();</div>
<div class="line"><a name="l00118"></a><span class="lineno">  118</span>&#160;    <span class="comment">// Check the event time and see whether it always the same value per the seed, but different than another instance of the expo. generator.</span></div>
<div class="line"><a name="l00119"></a><span class="lineno">  119</span>&#160;    EXPECT_DOUBLE_EQ(0.026268236846611673, event.occurAfterTime);</div>
<div class="line"><a name="l00120"></a><span class="lineno">  120</span>&#160;    </div>
<div class="line"><a name="l00121"></a><span class="lineno">  121</span>&#160;    <span class="comment">// Seed again, generate two tokens, compare with previous values. Does reseeding &quot;reset&quot; the same sequence?</span></div>
<div class="line"><a name="l00122"></a><span class="lineno">  122</span>&#160;    simulatorGlobals.seedRandomNumberGenerator(2);</div>
<div class="line"><a name="l00123"></a><span class="lineno">  123</span>&#160;    token = exponentialGenerator.<a class="code" href="class_exponential_traffic_generator.html#a9095b69f4e9eee6c4027ab9672916157">createInstanceTrafficEvent</a>();</div>
<div class="line"><a name="l00124"></a><span class="lineno">  124</span>&#160;    EXPECT_EQ(8, token-&gt;id);</div>
<div class="line"><a name="l00125"></a><span class="lineno">  125</span>&#160;    <span class="comment">// Get the event that was scheduled.</span></div>
<div class="line"><a name="l00126"></a><span class="lineno">  126</span>&#160;    <span class="keyword">event</span> = scheduler.cause();</div>
<div class="line"><a name="l00127"></a><span class="lineno">  127</span>&#160;    <span class="comment">// Event time should be the same as first prior event after seeding.</span></div>
<div class="line"><a name="l00128"></a><span class="lineno">  128</span>&#160;    EXPECT_DOUBLE_EQ(0.57269198962718915, event.occurAfterTime);</div>
<div class="line"><a name="l00129"></a><span class="lineno">  129</span>&#160;    token = exponentialGenerator.<a class="code" href="class_exponential_traffic_generator.html#a9095b69f4e9eee6c4027ab9672916157">createInstanceTrafficEvent</a>();</div>
<div class="line"><a name="l00130"></a><span class="lineno">  130</span>&#160;    EXPECT_EQ(9, token-&gt;id);</div>
<div class="line"><a name="l00131"></a><span class="lineno">  131</span>&#160;    <span class="comment">// Get the event that was scheduled.</span></div>
<div class="line"><a name="l00132"></a><span class="lineno">  132</span>&#160;    <span class="keyword">event</span> = scheduler.cause();</div>
<div class="line"><a name="l00133"></a><span class="lineno">  133</span>&#160;    <span class="comment">// Event time should be the same as second prior event after seeding.</span></div>
<div class="line"><a name="l00134"></a><span class="lineno">  134</span>&#160;    EXPECT_DOUBLE_EQ(0.20466788427640734, event.occurAfterTime);</div>
<div class="line"><a name="l00135"></a><span class="lineno">  135</span>&#160;</div>
<div class="line"><a name="l00136"></a><span class="lineno">  136</span>&#160;    <span class="comment">// Now let&#39;s reseed with 2, generate one token with one generator, another with second generator, another with first generator.</span></div>
<div class="line"><a name="l00137"></a><span class="lineno">  137</span>&#160;    <span class="comment">// The first value from the first generator should match the previous value just after seeding, but the subsequent values should be different, if the random number generator is really globally unique.</span></div>
<div class="line"><a name="l00138"></a><span class="lineno">  138</span>&#160;    simulatorGlobals.seedRandomNumberGenerator(2);</div>
<div class="line"><a name="l00139"></a><span class="lineno">  139</span>&#160;    token = exponentialGenerator.<a class="code" href="class_exponential_traffic_generator.html#a9095b69f4e9eee6c4027ab9672916157">createInstanceTrafficEvent</a>();</div>
<div class="line"><a name="l00140"></a><span class="lineno">  140</span>&#160;    EXPECT_EQ(10, token-&gt;id);</div>
<div class="line"><a name="l00141"></a><span class="lineno">  141</span>&#160;    <span class="comment">// Get the event that was scheduled.</span></div>
<div class="line"><a name="l00142"></a><span class="lineno">  142</span>&#160;    <span class="keyword">event</span> = scheduler.cause();</div>
<div class="line"><a name="l00143"></a><span class="lineno">  143</span>&#160;    <span class="comment">// Event time should be the same as first prior event after seeding.</span></div>
<div class="line"><a name="l00144"></a><span class="lineno">  144</span>&#160;    EXPECT_DOUBLE_EQ(0.57269198962718915, event.occurAfterTime);</div>
<div class="line"><a name="l00145"></a><span class="lineno">  145</span>&#160;    token = exponentialGeneratorSecond.<a class="code" href="class_exponential_traffic_generator.html#a9095b69f4e9eee6c4027ab9672916157">createInstanceTrafficEvent</a>();</div>
<div class="line"><a name="l00146"></a><span class="lineno">  146</span>&#160;    EXPECT_EQ(11, token-&gt;id);</div>
<div class="line"><a name="l00147"></a><span class="lineno">  147</span>&#160;    <span class="comment">// Get the event that was scheduled.</span></div>
<div class="line"><a name="l00148"></a><span class="lineno">  148</span>&#160;    <span class="keyword">event</span> = scheduler.cause();</div>
<div class="line"><a name="l00149"></a><span class="lineno">  149</span>&#160;    <span class="comment">// Event time *should* be the same as second prior event after seeding.</span></div>
<div class="line"><a name="l00150"></a><span class="lineno">  150</span>&#160;    EXPECT_DOUBLE_EQ(0.20466788427640734, event.occurAfterTime);</div>
<div class="line"><a name="l00151"></a><span class="lineno">  151</span>&#160;    token = exponentialGenerator.<a class="code" href="class_exponential_traffic_generator.html#a9095b69f4e9eee6c4027ab9672916157">createInstanceTrafficEvent</a>();</div>
<div class="line"><a name="l00152"></a><span class="lineno">  152</span>&#160;    EXPECT_EQ(12, token-&gt;id);</div>
<div class="line"><a name="l00153"></a><span class="lineno">  153</span>&#160;    <span class="comment">// Get the event that was scheduled.</span></div>
<div class="line"><a name="l00154"></a><span class="lineno">  154</span>&#160;    <span class="keyword">event</span> = scheduler.cause();</div>
<div class="line"><a name="l00155"></a><span class="lineno">  155</span>&#160;    <span class="comment">// Event time *should* be the same as third event from seed 2. That proves that the same pseudorandom sequence is unique per simulation.</span></div>
<div class="line"><a name="l00156"></a><span class="lineno">  156</span>&#160;    EXPECT_DOUBLE_EQ(0.026268236846611673, event.occurAfterTime);</div>
<div class="line"><a name="l00157"></a><span class="lineno">  157</span>&#160;</div>
<div class="line"><a name="l00158"></a><span class="lineno">  158</span>&#160;    <span class="comment">// Now test generator&#39;s token counters.</span></div>
<div class="line"><a name="l00159"></a><span class="lineno">  159</span>&#160;    EXPECT_EQ(10, exponentialGenerator.<a class="code" href="class_traffic_generator.html#ab9b21f5739748fadede79c7e4fa35ed7">getTokensGeneratedCount</a>());</div>
<div class="line"><a name="l00160"></a><span class="lineno">  160</span>&#160;    EXPECT_EQ(2, exponentialGeneratorSecond.<a class="code" href="class_traffic_generator.html#ab9b21f5739748fadede79c7e4fa35ed7">getTokensGeneratedCount</a>());</div>
<div class="line"><a name="l00161"></a><span class="lineno">  161</span>&#160;</div>
<div class="line"><a name="l00162"></a><span class="lineno">  162</span>&#160;}</div>
<div class="line"><a name="l00163"></a><span class="lineno">  163</span>&#160;</div>
<div class="line"><a name="l00165"></a><span class="lineno"><a class="line" href="_traffic_generator_test_8cpp.html#a86ec0d975cfeea5f39e75ba8106e8342">  165</a></span>&#160;<a class="code" href="_constant_rate_traffic_generator_test_8cpp.html#a26497dd468babfeebfd7e976fdc56dd6">TEST_F</a>(<a class="code" href="class_traffic_generator_test.html">TrafficGeneratorTest</a>, ConstantRateGeneratorTest) {</div>
<div class="line"><a name="l00166"></a><span class="lineno">  166</span>&#160;    std::shared_ptr&lt;Message&gt; source(<span class="keyword">new</span> <a class="code" href="class_message.html">Message</a>(<span class="stringliteral">&quot;This is a dummy entity for source.&quot;</span>));</div>
<div class="line"><a name="l00167"></a><span class="lineno">  167</span>&#160;    std::shared_ptr&lt;Message&gt; destination(<span class="keyword">new</span> <a class="code" href="class_message.html">Message</a>(<span class="stringliteral">&quot;This is a dummy entity for destination.&quot;</span>));</div>
<div class="line"><a name="l00168"></a><span class="lineno">  168</span>&#160;    std::shared_ptr&lt;Message&gt; tokenContents(<span class="keyword">new</span> <a class="code" href="class_message.html">Message</a>(<span class="stringliteral">&quot;This is a dummy Token contents.&quot;</span>));</div>
<div class="line"><a name="l00169"></a><span class="lineno">  169</span>&#160;    <span class="keywordtype">double</span> interval = 3.0;</div>
<div class="line"><a name="l00170"></a><span class="lineno">  170</span>&#160;    std::shared_ptr&lt;Token&gt; token(<span class="keyword">nullptr</span>);</div>
<div class="line"><a name="l00171"></a><span class="lineno">  171</span>&#160;</div>
<div class="line"><a name="l00172"></a><span class="lineno">  172</span>&#160;    <span class="comment">// Construct CBR generator.</span></div>
<div class="line"><a name="l00173"></a><span class="lineno">  173</span>&#160;    <a class="code" href="class_constant_rate_traffic_generator.html">ConstantRateTrafficGenerator</a> cbrGenerator(simulatorGlobals, scheduler, <a class="code" href="_event_type_8h.html#a2628ea8d12e8b2563c32f05dc7fff6faaa8dbff7900a4d5c983629de5a6f58d78">EventType::TRAFFIC_GENERATOR_ARRIVAL</a>, tokenContents, source, destination, 1, interval);</div>
<div class="line"><a name="l00174"></a><span class="lineno">  174</span>&#160;    <span class="comment">// Keep generator off, attempt to generate one instance of traffic. Member token is null at this point, since cbr generator is Off.</span></div>
<div class="line"><a name="l00175"></a><span class="lineno">  175</span>&#160;    EXPECT_EQ(token, cbrGenerator.<a class="code" href="class_constant_rate_traffic_generator.html#a446a16fedee30afbcb18ecb98f0457cf">createInstanceTrafficEvent</a>());</div>
<div class="line"><a name="l00176"></a><span class="lineno">  176</span>&#160;    <span class="comment">// Now turn generator On, generate one instance of traffic. Test outcomes.</span></div>
<div class="line"><a name="l00177"></a><span class="lineno">  177</span>&#160;    cbrGenerator.<a class="code" href="class_traffic_generator.html#aad024e020fac17dbee74f0da16707df1">turnOn</a>();</div>
<div class="line"><a name="l00178"></a><span class="lineno">  178</span>&#160;    token = cbrGenerator.<a class="code" href="class_constant_rate_traffic_generator.html#a446a16fedee30afbcb18ecb98f0457cf">createInstanceTrafficEvent</a>();</div>
<div class="line"><a name="l00179"></a><span class="lineno">  179</span>&#160;    EXPECT_EQ(1, token-&gt;id);</div>
<div class="line"><a name="l00180"></a><span class="lineno">  180</span>&#160;    EXPECT_EQ(1, token-&gt;priority);</div>
<div class="line"><a name="l00181"></a><span class="lineno">  181</span>&#160;    EXPECT_EQ(tokenContents, token-&gt;associatedEntity);</div>
<div class="line"><a name="l00182"></a><span class="lineno">  182</span>&#160;    EXPECT_EQ(source, token-&gt;source);</div>
<div class="line"><a name="l00183"></a><span class="lineno">  183</span>&#160;    EXPECT_EQ(destination, token-&gt;destination);</div>
<div class="line"><a name="l00184"></a><span class="lineno">  184</span>&#160;    <span class="comment">// Get the event that was scheduled.</span></div>
<div class="line"><a name="l00185"></a><span class="lineno">  185</span>&#160;    <a class="code" href="class_event.html">Event</a> <span class="keyword">event</span> = scheduler.cause();</div>
<div class="line"><a name="l00186"></a><span class="lineno">  186</span>&#160;    <span class="comment">// Check the event time and see whether it is as expected.</span></div>
<div class="line"><a name="l00187"></a><span class="lineno">  187</span>&#160;    EXPECT_DOUBLE_EQ(3.0, event.occurAfterTime);</div>
<div class="line"><a name="l00188"></a><span class="lineno">  188</span>&#160;    </div>
<div class="line"><a name="l00189"></a><span class="lineno">  189</span>&#160;    <span class="comment">// Generate a few other events, test the current clock time.</span></div>
<div class="line"><a name="l00190"></a><span class="lineno">  190</span>&#160;    <span class="comment">// Generate two arrivals in a row; must occur at the same time.</span></div>
<div class="line"><a name="l00191"></a><span class="lineno">  191</span>&#160;    token = cbrGenerator.<a class="code" href="class_constant_rate_traffic_generator.html#a446a16fedee30afbcb18ecb98f0457cf">createInstanceTrafficEvent</a>();</div>
<div class="line"><a name="l00192"></a><span class="lineno">  192</span>&#160;    EXPECT_EQ(2, token-&gt;id);</div>
<div class="line"><a name="l00193"></a><span class="lineno">  193</span>&#160;    EXPECT_EQ(1, token-&gt;priority);</div>
<div class="line"><a name="l00194"></a><span class="lineno">  194</span>&#160;    EXPECT_EQ(tokenContents, token-&gt;associatedEntity);</div>
<div class="line"><a name="l00195"></a><span class="lineno">  195</span>&#160;    EXPECT_EQ(source, token-&gt;source);</div>
<div class="line"><a name="l00196"></a><span class="lineno">  196</span>&#160;    EXPECT_EQ(destination, token-&gt;destination);</div>
<div class="line"><a name="l00197"></a><span class="lineno">  197</span>&#160;    token = cbrGenerator.<a class="code" href="class_constant_rate_traffic_generator.html#a446a16fedee30afbcb18ecb98f0457cf">createInstanceTrafficEvent</a>();</div>
<div class="line"><a name="l00198"></a><span class="lineno">  198</span>&#160;    EXPECT_EQ(3, token-&gt;id);</div>
<div class="line"><a name="l00199"></a><span class="lineno">  199</span>&#160;    EXPECT_EQ(1, token-&gt;priority);</div>
<div class="line"><a name="l00200"></a><span class="lineno">  200</span>&#160;    EXPECT_EQ(tokenContents, token-&gt;associatedEntity);</div>
<div class="line"><a name="l00201"></a><span class="lineno">  201</span>&#160;    EXPECT_EQ(source, token-&gt;source);</div>
<div class="line"><a name="l00202"></a><span class="lineno">  202</span>&#160;    EXPECT_EQ(destination, token-&gt;destination);</div>
<div class="line"><a name="l00203"></a><span class="lineno">  203</span>&#160;    <span class="comment">// Get the events, test the simulator clock.</span></div>
<div class="line"><a name="l00204"></a><span class="lineno">  204</span>&#160;    <span class="keyword">event</span> = scheduler.cause();</div>
<div class="line"><a name="l00205"></a><span class="lineno">  205</span>&#160;    EXPECT_DOUBLE_EQ(6.0, simulatorGlobals.getCurrentAbsoluteTime());</div>
<div class="line"><a name="l00206"></a><span class="lineno">  206</span>&#160;    <span class="comment">// Get the events, test the occurrence times.</span></div>
<div class="line"><a name="l00207"></a><span class="lineno">  207</span>&#160;    <span class="keyword">event</span> = scheduler.cause();</div>
<div class="line"><a name="l00208"></a><span class="lineno">  208</span>&#160;    EXPECT_DOUBLE_EQ(6.0, simulatorGlobals.getCurrentAbsoluteTime());</div>
<div class="line"><a name="l00209"></a><span class="lineno">  209</span>&#160;    <span class="comment">// Now generate events in turns to test sequence of occurrence times.</span></div>
<div class="line"><a name="l00210"></a><span class="lineno">  210</span>&#160;    token = cbrGenerator.<a class="code" href="class_constant_rate_traffic_generator.html#a446a16fedee30afbcb18ecb98f0457cf">createInstanceTrafficEvent</a>();</div>
<div class="line"><a name="l00211"></a><span class="lineno">  211</span>&#160;    EXPECT_EQ(4, token-&gt;id);</div>
<div class="line"><a name="l00212"></a><span class="lineno">  212</span>&#160;    EXPECT_EQ(1, token-&gt;priority);</div>
<div class="line"><a name="l00213"></a><span class="lineno">  213</span>&#160;    EXPECT_EQ(tokenContents, token-&gt;associatedEntity);</div>
<div class="line"><a name="l00214"></a><span class="lineno">  214</span>&#160;    EXPECT_EQ(source, token-&gt;source);</div>
<div class="line"><a name="l00215"></a><span class="lineno">  215</span>&#160;    EXPECT_EQ(destination, token-&gt;destination);</div>
<div class="line"><a name="l00216"></a><span class="lineno">  216</span>&#160;    <span class="keyword">event</span> = scheduler.cause();</div>
<div class="line"><a name="l00217"></a><span class="lineno">  217</span>&#160;    EXPECT_DOUBLE_EQ(9.0, simulatorGlobals.getCurrentAbsoluteTime());</div>
<div class="line"><a name="l00218"></a><span class="lineno">  218</span>&#160;    token = cbrGenerator.<a class="code" href="class_constant_rate_traffic_generator.html#a446a16fedee30afbcb18ecb98f0457cf">createInstanceTrafficEvent</a>();</div>
<div class="line"><a name="l00219"></a><span class="lineno">  219</span>&#160;    EXPECT_EQ(5, token-&gt;id);</div>
<div class="line"><a name="l00220"></a><span class="lineno">  220</span>&#160;    EXPECT_EQ(1, token-&gt;priority);</div>
<div class="line"><a name="l00221"></a><span class="lineno">  221</span>&#160;    EXPECT_EQ(tokenContents, token-&gt;associatedEntity);</div>
<div class="line"><a name="l00222"></a><span class="lineno">  222</span>&#160;    EXPECT_EQ(source, token-&gt;source);</div>
<div class="line"><a name="l00223"></a><span class="lineno">  223</span>&#160;    EXPECT_EQ(destination, token-&gt;destination);</div>
<div class="line"><a name="l00224"></a><span class="lineno">  224</span>&#160;    <span class="keyword">event</span> = scheduler.cause();</div>
<div class="line"><a name="l00225"></a><span class="lineno">  225</span>&#160;    EXPECT_DOUBLE_EQ(12.0, simulatorGlobals.getCurrentAbsoluteTime());</div>
<div class="line"><a name="l00226"></a><span class="lineno">  226</span>&#160;    token = cbrGenerator.<a class="code" href="class_constant_rate_traffic_generator.html#a446a16fedee30afbcb18ecb98f0457cf">createInstanceTrafficEvent</a>();</div>
<div class="line"><a name="l00227"></a><span class="lineno">  227</span>&#160;    EXPECT_EQ(6, token-&gt;id);</div>
<div class="line"><a name="l00228"></a><span class="lineno">  228</span>&#160;    EXPECT_EQ(1, token-&gt;priority);</div>
<div class="line"><a name="l00229"></a><span class="lineno">  229</span>&#160;    EXPECT_EQ(tokenContents, token-&gt;associatedEntity);</div>
<div class="line"><a name="l00230"></a><span class="lineno">  230</span>&#160;    EXPECT_EQ(source, token-&gt;source);</div>
<div class="line"><a name="l00231"></a><span class="lineno">  231</span>&#160;    EXPECT_EQ(destination, token-&gt;destination);</div>
<div class="line"><a name="l00232"></a><span class="lineno">  232</span>&#160;    <span class="keyword">event</span> = scheduler.cause();</div>
<div class="line"><a name="l00233"></a><span class="lineno">  233</span>&#160;    EXPECT_DOUBLE_EQ(15.0, simulatorGlobals.getCurrentAbsoluteTime());</div>
<div class="line"><a name="l00234"></a><span class="lineno">  234</span>&#160;}</div>
<div class="line"><a name="l00235"></a><span class="lineno">  235</span>&#160;</div>
<div class="line"><a name="l00236"></a><span class="lineno">  236</span>&#160;</div>
<div class="ttc" id="class_scheduler_html"><div class="ttname"><a href="class_scheduler.html">Scheduler</a></div><div class="ttdoc">Scheduler class. </div><div class="ttdef"><b>Definition:</b> <a href="_scheduler_8h_source.html#l00058">Scheduler.h:58</a></div></div>
<div class="ttc" id="class_traffic_generator_test_html_ae2be7a7e40632b323e0d69f4f1158ee5"><div class="ttname"><a href="class_traffic_generator_test.html#ae2be7a7e40632b323e0d69f4f1158ee5">TrafficGeneratorTest::TrafficGeneratorTest</a></div><div class="ttdeci">TrafficGeneratorTest()</div><div class="ttdef"><b>Definition:</b> <a href="_traffic_generator_test_8cpp_source.html#l00027">TrafficGeneratorTest.cpp:27</a></div></div>
<div class="ttc" id="class_event_html"><div class="ttname"><a href="class_event.html">Event</a></div><div class="ttdoc">Event class. </div><div class="ttdef"><b>Definition:</b> <a href="_event_8h_source.html#l00035">Event.h:35</a></div></div>
<div class="ttc" id="class_exponential_traffic_generator_html"><div class="ttname"><a href="class_exponential_traffic_generator.html">ExponentialTrafficGenerator</a></div><div class="ttdoc">ExponentialTrafficGenerator class. </div><div class="ttdef"><b>Definition:</b> <a href="_exponential_traffic_generator_8h_source.html#l00039">ExponentialTrafficGenerator.h:39</a></div></div>
<div class="ttc" id="class_constant_rate_traffic_generator_html"><div class="ttname"><a href="class_constant_rate_traffic_generator.html">ConstantRateTrafficGenerator</a></div><div class="ttdoc">ConstantRateTrafficGenerator class. </div><div class="ttdef"><b>Definition:</b> <a href="_constant_rate_traffic_generator_8h_source.html#l00035">ConstantRateTrafficGenerator.h:35</a></div></div>
<div class="ttc" id="class_constant_rate_traffic_generator_html_a446a16fedee30afbcb18ecb98f0457cf"><div class="ttname"><a href="class_constant_rate_traffic_generator.html#a446a16fedee30afbcb18ecb98f0457cf">ConstantRateTrafficGenerator::createInstanceTrafficEvent</a></div><div class="ttdeci">std::shared_ptr&lt; Token &gt; createInstanceTrafficEvent(bool recordRoute=false) override</div><div class="ttdef"><b>Definition:</b> <a href="_constant_rate_traffic_generator_8cpp_source.html#l00053">ConstantRateTrafficGenerator.cpp:53</a></div></div>
<div class="ttc" id="_event_type_8h_html_a2628ea8d12e8b2563c32f05dc7fff6faaa8dbff7900a4d5c983629de5a6f58d78"><div class="ttname"><a href="_event_type_8h.html#a2628ea8d12e8b2563c32f05dc7fff6faaa8dbff7900a4d5c983629de5a6f58d78">EventType::TRAFFIC_GENERATOR_ARRIVAL</a></div><div class="ttdoc">Arrival of instance of traffic generator. </div></div>
<div class="ttc" id="class_traffic_generator_test_html"><div class="ttname"><a href="class_traffic_generator_test.html">TrafficGeneratorTest</a></div><div class="ttdoc">Fixture for TrafficGenerator classes Tests. </div><div class="ttdef"><b>Definition:</b> <a href="_traffic_generator_test_8h_source.html#l00044">TrafficGeneratorTest.h:44</a></div></div>
<div class="ttc" id="class_traffic_generator_html_ab9b21f5739748fadede79c7e4fa35ed7"><div class="ttname"><a href="class_traffic_generator.html#ab9b21f5739748fadede79c7e4fa35ed7">TrafficGenerator::getTokensGeneratedCount</a></div><div class="ttdeci">virtual unsigned int getTokensGeneratedCount() const </div><div class="ttdef"><b>Definition:</b> <a href="_traffic_generator_8cpp_source.html#l00258">TrafficGenerator.cpp:258</a></div></div>
<div class="ttc" id="class_exponential_traffic_generator_html_a9095b69f4e9eee6c4027ab9672916157"><div class="ttname"><a href="class_exponential_traffic_generator.html#a9095b69f4e9eee6c4027ab9672916157">ExponentialTrafficGenerator::createInstanceTrafficEvent</a></div><div class="ttdeci">std::shared_ptr&lt; Token &gt; createInstanceTrafficEvent(bool recordRoute=false) override</div><div class="ttdef"><b>Definition:</b> <a href="_exponential_traffic_generator_8cpp_source.html#l00074">ExponentialTrafficGenerator.cpp:74</a></div></div>
<div class="ttc" id="class_message_html"><div class="ttname"><a href="class_message.html">Message</a></div><div class="ttdoc">Message class. </div><div class="ttdef"><b>Definition:</b> <a href="_message_8h_source.html#l00032">Message.h:32</a></div></div>
<div class="ttc" id="class_simulator_globals_html"><div class="ttname"><a href="class_simulator_globals.html">SimulatorGlobals</a></div><div class="ttdoc">Simulator-scope variables and parameters. </div><div class="ttdef"><b>Definition:</b> <a href="_simulator_globals_8h_source.html#l00159">SimulatorGlobals.h:159</a></div></div>
<div class="ttc" id="class_traffic_generator_html_aad024e020fac17dbee74f0da16707df1"><div class="ttname"><a href="class_traffic_generator.html#aad024e020fac17dbee74f0da16707df1">TrafficGenerator::turnOn</a></div><div class="ttdeci">virtual void turnOn()</div><div class="ttdef"><b>Definition:</b> <a href="_traffic_generator_8cpp_source.html#l00178">TrafficGenerator.cpp:178</a></div></div>
<div class="ttc" id="_constant_rate_traffic_generator_test_8cpp_html_a26497dd468babfeebfd7e976fdc56dd6"><div class="ttname"><a href="_constant_rate_traffic_generator_test_8cpp.html#a26497dd468babfeebfd7e976fdc56dd6">TEST_F</a></div><div class="ttdeci">TEST_F(ConstantRateTrafficGeneratorTest, ConstantRateRateGeneratorTest)</div><div class="ttdoc">Tests for constant rate generator. </div><div class="ttdef"><b>Definition:</b> <a href="_constant_rate_traffic_generator_test_8cpp_source.html#l00034">ConstantRateTrafficGeneratorTest.cpp:34</a></div></div>
<div class="ttc" id="_traffic_generator_test_8h_html"><div class="ttname"><a href="_traffic_generator_test_8h.html">TrafficGeneratorTest.h</a></div></div>
<div class="ttc" id="class_simulator_globals_html_a4f30b6252c3682679c05233afbc0604d"><div class="ttname"><a href="class_simulator_globals.html#a4f30b6252c3682679c05233afbc0604d">SimulatorGlobals::seedRandomNumberGenerator</a></div><div class="ttdeci">void seedRandomNumberGenerator(unsigned int seed)</div><div class="ttdef"><b>Definition:</b> <a href="_simulator_globals_8cpp_source.html#l00147">SimulatorGlobals.cpp:147</a></div></div>
<div class="ttc" id="class_traffic_generator_test_html_aaa15cf542a6bf04399fccc19f4ad942c"><div class="ttname"><a href="class_traffic_generator_test.html#aaa15cf542a6bf04399fccc19f4ad942c">TrafficGeneratorTest::simulatorGlobals</a></div><div class="ttdeci">SimulatorGlobals simulatorGlobals</div><div class="ttdef"><b>Definition:</b> <a href="_traffic_generator_test_8h_source.html#l00046">TrafficGeneratorTest.h:46</a></div></div>
</div><!-- fragment --></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Wed Jan 15 2014 10:33:14 for QCNSim by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.5
</small></address>
</body>
</html>
